package com.hirsi.module.department.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hirsi.module.department.entity.Department;
import com.hirsi.module.department.vo.EditDepartmentVo;
import com.hirsi.module.department.vo.param.MoveDepartmentParam;
import com.hirsi.module.department.vo.param.RemoveMemberParam;
import com.hirsi.module.department.vo.result.DepartmentTreeResult;

import java.util.List;

/**
 * <p>
 * 部门表 服务类
 * </p>
 *
 * @author Hirsi
 * @since 2024-03-11
 */
public interface DepartmentService extends IService<Department> {

    List<DepartmentTreeResult> tree();

    EditDepartmentVo edit(Integer id);

    void save(EditDepartmentVo vo);

    void move(MoveDepartmentParam param);

    void delete(List<Integer> ids);

    void removeMember(RemoveMemberParam param);
}
